package com.key.controller;


import com.key.common.R;
import com.key.common.TranException;
import org.omg.CORBA.SystemException;
import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.ResponseBody;


@ControllerAdvice
public class IntegrateException  {
    @ExceptionHandler(TranException.class)    // 该注解作用： 拦截是否是系统异常，是的话就调用下面的方法进行处理异常
    @ResponseBody
    public R doSystemException(TranException te){
        // (SystemException sy)：把SystemException对象传递过来（因为刚才业务层模拟系统异常的时候，把返回给前端的信息封装到sy对象属性中了）
        R r=new R();
        r.setCode(500);
        r.setMsg(te.getMessage());
        return r;
        // 把封装到sy系统异常类属性中的系统异常状态码信息返回给用户
    }


}
